#pragma once

#include "CButtonControl.h"

NAMESPACE_CORE_BEGIN

class UI_API CCheck : public CButtonControl
{
public:
	CCheck();
	CCheck(int_32 iX, int_32 iY, int_32 iWidth, int_32 iHeight);
	~CCheck();

	const COID & GetOID() const;
public:
	void MouseClick(CMouseArgument & args);
	void OnPaintBack(IPaint * pPaint, const CRectInt32 & rcClip) const;

public:
	void SetChecked(bool bChecked);
	bool IsChecked() const;

protected:
	void DrawButtonIcon(IPaint * pPaint, int_32 iX, int_32 iY) const;
	void DrawButtonText(IPaint * pPaint, int_32 iX, int_32 iY) const;

	void DrawIconV8(IPaint * pPaint, int_32 iX, int_32 iY) const;

protected:
	bool m_bChecked;
};

NAMESPACE_CORE_END
